// Insert value
SBTreeNode* insert(SBTreeNode **node, int value, char *valid)
{
	SBTreeNode *newSBTreeNode;
	if (*node == NULL)
	{
		*node = newSBTreeNode = initSBTreeNode(value);
		*valid = 1;
	}
	else
		if ((*node)->bigram == value)
		{
			*valid = 0;
			return *node;
		}
		else
		{
			if (value < (*node)->bigram)
				newSBTreeNode = insert(&((*node)->lchild), value, valid);
			else
				newSBTreeNode = insert(&((*node)->rchild), value, valid);
			if (*valid)
				(*node)->size++;
		}
	maintain(node, value > (*node)->bigram);
	return newSBTreeNode;
}
